/*
 * Copyright 2009 Tran Nhut Trung.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); 
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, 
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and 
 * limitations under the License.
 */
package org.eclipse.core.databinding.conversion.gwt;

import org.eclipse.core.databinding.conversion.Converter;

public class StringToBooleanConverter extends Converter{
  private static final String TRUE = "true";
  private static final String YES = "yes";
  private static final String CHECKED = "checked";
  private static final String ONE = "1";

  public StringToBooleanConverter() {
    super(String.class, Boolean.class);
  }

  public Object convert(Object fromObject) {
    if (TRUE.equalsIgnoreCase((String)fromObject)){
      return Boolean.TRUE;
    }
    if (YES.equalsIgnoreCase((String)fromObject)){
      return Boolean.TRUE;
    }
    if (CHECKED.equalsIgnoreCase((String)fromObject)){
      return Boolean.TRUE;
    }
    if (ONE.equalsIgnoreCase((String)fromObject)){
      return Boolean.TRUE;
    }
    
    return Boolean.FALSE;
  }
}
